home *** CD-ROM | disk | FTP | other *** search
/ Cre@te Online 2000 December / Cre@teOnline CD05.iso / MacSoft / XML ConsoleMax.sea / XML ConsoleMax / Required / swingall.jar / javax / swing / JTree$TreeModelHandler.class (.txt) < prev    next >
Encoding:
Java Class File  |  1999-07-15  |  2.4 KB  |  78 lines

  1. package javax.swing;
  2.  
  3. import java.util.Vector;
  4. import javax.swing.event.TreeModelEvent;
  5. import javax.swing.event.TreeModelListener;
  6. import javax.swing.tree.TreeModel;
  7. import javax.swing.tree.TreePath;
  8.  
  9. public class JTree$TreeModelHandler implements TreeModelListener {
  10.    // $FF: synthetic field
  11.    private final JTree this$0;
  12.  
  13.    protected JTree$TreeModelHandler(JTree var1) {
  14.       this.this$0 = var1;
  15.    }
  16.  
  17.    public void treeNodesChanged(TreeModelEvent var1) {
  18.    }
  19.  
  20.    public void treeNodesInserted(TreeModelEvent var1) {
  21.    }
  22.  
  23.    public void treeNodesRemoved(TreeModelEvent var1) {
  24.       if (var1 != null) {
  25.          TreePath var2 = var1.getTreePath();
  26.          Object[] var3 = var1.getChildren();
  27.          if (var3 != null) {
  28.             Vector var5 = new Vector(Math.max(1, var3.length));
  29.  
  30.             for(int var6 = var3.length - 1; var6 >= 0; --var6) {
  31.                TreePath var4 = var2.pathByAddingChild(var3[var6]);
  32.                if (JTree.access$0(this.this$0).get(var4) != null) {
  33.                   var5.addElement(var4);
  34.                }
  35.             }
  36.  
  37.             if (var5.size() > 0) {
  38.                this.this$0.removeDescendantToggledPaths(var5.elements());
  39.             }
  40.  
  41.             TreeModel var7 = this.this$0.getModel();
  42.             if (var7 == null || var7.isLeaf(var2.getLastPathComponent())) {
  43.                JTree.access$0(this.this$0).remove(var2);
  44.             }
  45.  
  46.          }
  47.       }
  48.    }
  49.  
  50.    public void treeStructureChanged(TreeModelEvent var1) {
  51.       if (var1 != null) {
  52.          TreePath var2 = var1.getTreePath();
  53.          if (var2 != null) {
  54.             if (var2.getPathCount() == 1) {
  55.                this.this$0.clearToggledPaths();
  56.                if (!this.this$0.treeModel.isLeaf(this.this$0.treeModel.getRoot())) {
  57.                   JTree.access$0(this.this$0).put(var2, Boolean.TRUE);
  58.                }
  59.             } else if (JTree.access$0(this.this$0).get(var2) != null) {
  60.                Vector var3 = new Vector(1);
  61.                boolean var4 = this.this$0.isExpanded(var2);
  62.                var3.addElement(var2);
  63.                this.this$0.removeDescendantToggledPaths(var3.elements());
  64.                if (var4) {
  65.                   TreeModel var5 = this.this$0.getModel();
  66.                   if (var5 != null && !var5.isLeaf(var2.getLastPathComponent())) {
  67.                      JTree.access$0(this.this$0).put(var2, Boolean.TRUE);
  68.                   } else {
  69.                      this.this$0.collapsePath(var2);
  70.                   }
  71.                }
  72.             }
  73.  
  74.          }
  75.       }
  76.    }
  77. }
  78.